import 'package:safetymonitor/generated/json/base/json_field.dart';
import 'package:safetymonitor/generated/json/enterprise_staff_entity_entity.g.dart';
import 'dart:convert';
export 'package:safetymonitor/generated/json/enterprise_staff_entity_entity.g.dart';
///获得人员及其证件照详情分页
@JsonSerializable()
class EnterpriseStaffEntityEntity {

	EnterpriseStaffEntityEntity();

	factory EnterpriseStaffEntityEntity.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntityEntityFromJson(json);
	int? id;
	String? createTime;
	String? picture;
	int? companyId;
	String? companyName;
	int? deptId;
	String? deptName;
	int? teamId;
	String? teamName;
	String? staffName;
	int? sex;
	String? birthTime;
	String? idCard;
	String? phoneNumber;
	int? educationId;
	String? educationName;
	String? startWorkingTime;
	String? archiveNumber;
	int? jobId;
	String? jobName;
	bool? isSpecialJob;
	bool? isSafeEducation;
	bool? isAccident;
	bool? isInjury;
	bool? isHarmful;
	String? accidentDescription;
	bool? isSpecialStaff;
	bool? isSpecialDeviceStaff;
	bool? isSafeEngineer;
	List<EnterpriseStaffEntityWorkExperience>? workExperience;
	List<EnterpriseStaffEntityHealthConition>? healthConition;
	List<EnterpriseStaffEntityThreeViolation>? threeViolation;
	List<EnterpriseStaffEntityStaffEducation>? staffEducation;
	int? sumPeriod;
	List<EnterpriseStaffEntitySpecialDeviceStaff>? specialDeviceStaff = [];
	List<EnterpriseStaffEntitySafeEngineer>? safeEngineer = [];
	List<EnterpriseStaffEntitySpecialStaff>? specialStaff = [];

	Map<String, dynamic> toJson() => $EnterpriseStaffEntityEntityToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntityWorkExperience {

	EnterpriseStaffEntityWorkExperience();

	factory EnterpriseStaffEntityWorkExperience.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntityWorkExperienceFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	int? staffId;
	int? jobId;
	String? jobName;
	String? startTime;
	String? endTime;
	int? mechanismId;
	String? mechanismName;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntityWorkExperienceToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntityHealthConition {

	EnterpriseStaffEntityHealthConition();

	factory EnterpriseStaffEntityHealthConition.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntityHealthConitionFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	int? staffId;
	String? physicalExaminationTime;
	bool? isPhysical;
	bool? isHealth;
	String? diseaseDescription;
	String? reason;
	String? bodyHealthType;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntityHealthConitionToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntityThreeViolation {

	EnterpriseStaffEntityThreeViolation();

	factory EnterpriseStaffEntityThreeViolation.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntityThreeViolationFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	int? staffId;
	String? viplationTime;
	String? viplationType;
	String? violationLaw;
	String? detail;
	String? rectification;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntityThreeViolationToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntityStaffEducation {

	EnterpriseStaffEntityStaffEducation();

	factory EnterpriseStaffEntityStaffEducation.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntityStaffEducationFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	int? staffId;
	String? educationName;
	String? educationType;
	String? educationLevel;
	String? educationAddr;
	String? startTime;
	String? endTime;
	int? studyHours;
	int? examinationNumber;
	String? staffType;
	bool? isCertificate;
	bool? isAnnualTraining;
	bool? isSpecializedTraining;
	int? companyExaminationNumber;
	int? smallCompanyExaminationNumber;
	String? traningContent;
	int? isPass;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntityStaffEducationToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntitySpecialDeviceStaff {

	EnterpriseStaffEntitySpecialDeviceStaff();

	factory EnterpriseStaffEntitySpecialDeviceStaff.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntitySpecialDeviceStaffFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	String? workType;
	String? beginTime;
	String? endTime;
	String? certificateCode;
	String? cetificatePicture;
	int? staffId;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntitySpecialDeviceStaffToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntitySafeEngineer {

	EnterpriseStaffEntitySafeEngineer();

	factory EnterpriseStaffEntitySafeEngineer.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntitySafeEngineerFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	String? workType;
	String? certificateTime;
	String? certificateCode;
	String? cetificatePicture;
	int? staffId;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntitySafeEngineerToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}

@JsonSerializable()
class EnterpriseStaffEntitySpecialStaff {

	EnterpriseStaffEntitySpecialStaff();

	factory EnterpriseStaffEntitySpecialStaff.fromJson(Map<String, dynamic> json) => $EnterpriseStaffEntitySpecialStaffFromJson(json);
	String? createTime;
	String? updateTime;
	String? creator;
	String? updater;
	bool? deleted;
	int? id;
	String? workType;
	String? beginTime;
	String? endTime;
	String? certificateCode;
	String? cetificatePicture;
	int? staffId;

	Map<String, dynamic> toJson() => $EnterpriseStaffEntitySpecialStaffToJson(this);

	@override
	String toString() {
		return jsonEncode(this);
	}
}